The invention relates to the field of data processing and process control. In particular, the invention relates to nonlinear regression prediction and/or control of complex multi-step processes.
Process prediction and control is crucial to optimizing the outcome of complex multi-step production processes. For example, the production process for integrated circuits comprises hundreds of process steps (i.e., sub-processes). In turn, each process step may have several controllable parameters, or inputs, that affect the outcome of the process step, subsequent process steps, and/or the process as a whole. In addition, the impact of the controllable parameters on outcome may vary from process run to process run, day to day, or hour to hour. The typical integrated circuit fabrication process thus has a thousand or more controllable inputs, any number of which may be cross-correlated and have a time-varying, nonlinear relationship with the process outcome. As a result, process prediction and control is crucial to optimizing process parameters and to obtaining, or maintaining, acceptable outcomes.
The present invention provides a method and system for complex process prediction and optimization utilizing sub-process metrics and optimization of the sub-process metrics with respect to a cost function for the process.
In one aspect, the invention comprises: (1) providing a map between the sub-process metrics and process metrics using a nonlinear regression model; (2) providing one or more target process metrics; (3) providing an acceptable range of values for the sub-process metrics to define a sub-process metric constraint set; (4) providing a cost function for the sub-process metrics; and (5) determining values for the sub-process metrics that are within the constraint set, and that produce at the lowest cost a process metric(s) that is as close as possible to the target process metric(s) in order to define target sub-process metrics for each sub-process.
In another aspect of the invention, steps (1) to (5) in the preceding paragraph are applied at different hierarchical process levels. For example these steps may be repeated for sub-sub-processes of one or more sub-processes. (That is, the sub-process becomes the xe2x80x9cprocessxe2x80x9d of steps (1) to (5) and the sub-sub-process becomes the xe2x80x9csub-process.xe2x80x9d) Similarly, in another aspect of the invention, steps (1) to (5) in the preceding paragraph are repeated for a higher level process composed of two or more processes from step (1). (That is, the process becomes the xe2x80x9csub-processxe2x80x9d of the new higher level process.) In effect, the present invention may perform a hierarchical series of steps (1) to (5) that can be scaled to any level of the overall production process.
As used herein, the term xe2x80x9cmetricxe2x80x9d refers to any parameter used to measure the outcome or quality of a process or sub-process. Metrics include parameters determined both in situ during the running of a sub-process or process, and ex situ, at the end of a sub-process or process.
The map between sub-process metrics and process metrics is preferably determined by training a nonlinear regression model against measured sub-process and process metrics. The sub-process metrics from each of the sub-processes serve as the input to a nonlinear regression model, such as a neural network. The output for nonlinear regression model is the process metric(s). The nonlinear regression model is preferably trained by comparing a calculated process metric(s), based on measured sub-process metrics for an actual process run, with the actual process metric(s) as measured for the actual process run. The difference between calculated and measured process metric(s), or the error, is used to compute the corrections to the adjustable parameters in the regression model. If the regression model is a neural network, these adjustable parameters are the connection weights between the layers of the neurons in the network.
In one embodiment, the nonlinear regression model is a neural network. In one version, the neural-network model architecture comprises a two-layer feedforward model with cascade correlation of the single hidden-layer nodes and an adaptive gradient algorithm for back-propagation of prediction errors to adjust network weights. Hidden units are added one at a time (or in vector candidate groups) and trained to maximize the correlation between the hidden unit""s outputs and the residual error at the output of the current training process metrics (i.e., the training vector). Previously hidden units are connected or xe2x80x9ccascadedxe2x80x9d through weights to subsequent units to reduce the residual error not explained by previous hidden nodes.
In another aspect, the present invention comprises: (1) providing a map between the sub-process metrics and process metrics using a nonlinear regression model; (2) providing one or more target process metrics; (3) providing an acceptable range of values for the sub-process metrics to define a sub-process metric constraint set; (4) providing a cost function for the sub-process metrics; (5) determining values for the sub-process metrics that are within the constraint set, and that produce at the lowest cost a process metric(s) that is as close as possible to the target process metric(s) in order to define target sub-process metrics for each sub-process; (6) determining a map between the operational variables of a sub-process and the metrics of the sub-process; (7) providing a cost function for the sub-process operational variables; and (8) determining values for the sub-process operational variables that produce at the lowest cost the sub-process metric, and that are as close as possible to the target sub-process metric values.
As used herein, the term xe2x80x9coperational variablesxe2x80x9d includes sub-process controls that can be manipulated to vary the sub-process procedure, such as set point adjustments (referred to herein as xe2x80x9cmanipulated variablesxe2x80x9d), variables that indicate the wear, repair, or replacement status of a sub-process component(s) (referred to herein as xe2x80x9creplacement variablesxe2x80x9d), and variables that indicate the calibration status of the sub-process controls (referred to herein as xe2x80x9ccalibration variablesxe2x80x9d). Furthermore, it should be understood that acceptable values of sub-process operational variables include, but are not limited to, continuous values, discrete values and binary values.
For example, where the process comprises plasma etching of silicon wafers, the operational variables for a plasma etch sub-process, such as performed by a LAM 4520 plasma etch tool, may be as follows: manipulated variables (xe2x80x9cMVxe2x80x9d) may include, e.g., RF power and process gas flow; replacement variables (xe2x80x9cRVxe2x80x9d) may include, e.g., time since last electrode replacement and/or a binary variable that indicates the need to replace/not replace the electrodes; and calibration variables (xe2x80x9cCalVxe2x80x9d) may include, e.g., time since last machine calibration and/or the need for calibration.
In another aspect, the invention comprises: (1) providing a map between the sub-process metrics and sub-process operational variables and the process metrics using a nonlinear regression model; (2) providing one or more target process metrics; (3) providing an acceptable range of values for the sub-process metrics and sub-process operational variables to define a sub-process operational constraint set; (4) providing a cost function for the sub-process metrics and operational variables; and (5) determining values for the sub-process metrics and operational variables that are within the constraint set, and that produce at the lowest cost a process metric(s) that is as close as possible to the a target process metric(s) in order to define target sub-process metrics and target operational variables for each sub-process.
In another aspect, the invention comprises: (1) providing one or more target process metrics; (2) determining values for the sub-process metrics that are within a constraint set, and that produce at the lowest cost a process metric(s) that is as close as possible to the target process metric(s) to define a target sub-process metric for each sub-process; (3) detecting a substantial deviation in the metric(s) of at least one sub-process from its sub-process target metrics that defines a deviating sub-process; and (4) determining values for the sub-process metrics of the sub-process(es) downstream of the deviating sub-process, which metrics are within a constraint set and produce at the lowest cost a process metric(s) that is as close as possible to the target process metric(s) to define a compensating target sub-process metric(s) for each downstream sub-process. In this aspect, the present invention provides a method and system for minimizing the effects of a deviating sub-process on the outcome of the process by determining sub-process metrics for downstream sub-processes that may compensate for the deviating sub-process.
A deviating sub-process comprises any sub-process that exhibits a sub-process metric that is outside of an acceptable range of values about a target value for the sub-process metric. The deviation may arise, for example, from a malfunction in the sub-process, an intentional change in the sub-process, and/or the inability of a sub-process, or process operator, to produce a sub-process metric within the acceptable range of values about a target value for the sub-process metric.
In one embodiment of the invention described in the preceding paragraphs, the invention further comprises setting a new target process metric(s) based on the sub-process metrics of the deviating sub-process. In another embodiment of the invention described in the preceding paragraph, the invention further comprises, (6) providing a map between the operational variables of a downstream sub-process and the metrics of that sub-process; (7) providing a cost function for the sub-process operational variables; and (8) determining values for the downstream sub-process operational variables that produce at the lowest cost the sub-process metric, and that are as close as possible to the compensating sub-process metric for that downstream sub-process.
In other aspects, the present invention provides systems adapted to practice the methods of the invention set forth above. In one embodiment, the system comprises a process monitor and a data processing device. The process monitor may comprise any device that provides information on process parameters and/or process metrics. The data processing device may comprise an analog and/or digital circuit configured to implement the functionality of one or more of the methods of the present invention using at least in part information provided by the process monitor. The information provided by the process monitor can be used directly to measure directly one or more metrics, operational variables, or both, associated with a process or sub-process. The information provided by the process monitor can also be used directly to train a non-linear regression model in the relationship between one or more of sub-process and process metrics, and sub-process metrics and sub-process operational variables (e.g., by using process parameter information as values for variables in an input vector and metrics as values for variables in a target output vector) or used to construct training data set for later use. In addition, in one embodiment, the systems of the present invention are adapted to conduct continual, on-the-fly training of the non-linear regression model.
In another embodiment, the system further comprises a process tool controller in electronic communication with the data processing device. The process tool controller may be any device capable of adjusting one or more process or sub-process operational variables in response to a control signal from the data processing device.
In some embodiments, the data processing device may implement the functionality of the methods of the present invention as software on a general purpose computer. In addition, such a program may set aside portions of a computer""s random access memory to provide control logic that affects one or more of the measuring of metrics, the measuring of operational variables, the provision of target metric values, the provision of constraint sets, the prediction of metrics, the determination of metrics, the implementation of an optimizer, determination of operational variables, and detecting deviations of or in a metric. In such an embodiment, the program may be written in any one of a number of high-level languages, such as FORTRAN, PASCAL, C, C++, Tcl, or BASIC. Further, the program can be written in a script, macro, or functionality embedded in commercially available software, such as EXCEL or VISUAL BASIC. Additionally, the software can be implemented in an assembly language directed to a microprocessor resident on a computer. For example, the software can be implemented in Intel 80x86 assembly language if it is configured to run on an IBM PC or PC clone. The software may be embedded on an article of manufacture including, but not limited to, xe2x80x9ccomputer-readable program meansxe2x80x9d such as a floppy disk, a hard disk, an optical disk, a magnetic tape, a PROM, an EPROM, or CD-ROM.
In a further aspect, the present invention provides an article of manufacture where the functionality of a method of the present invention is embedded on a computer-readable medium, such as, but not limited to, a floppy disk, a hard disk, an optical disk, a magnetic tape, a PROM, an EPROM, CD-ROM, or DVD-ROM.